home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Online / SpeakFreely / src / lpc10 / hp100.c < prev    next >
C/C++ Source or Header  |  2000-05-18  |  825b  |  41 lines

  1. /**********************************************************************
  2. *
  3. *      HP100 Version 55
  4. *
  5. **********************************************************************
  6. *
  7. *    100 Hz High Pass Filter
  8. *
  9. * Jan 92 - corrected typo (1.937148 to 1.935715),
  10. *          rounded coefficients to 7 places,
  11. *          corrected and merged gain (.97466**4),
  12. *          merged numerator into first two sections.
  13. */
  14.  
  15. #include "lpcdefs.h"
  16.  
  17. hp100(speech)
  18. float speech[];
  19. {
  20. int i;
  21. float si, err;
  22. static float z11=0.0, z21=0.0, z12=0.0, z22=0.0;
  23.  
  24. for( i = 0;i<LFRAME;i++)    {
  25.     si = speech[i];
  26.  
  27.     err = si + 1.859076*z11 - .8648249*z21;
  28.     si = err - 2.00*z11 + z21;
  29.     z21 = z11;
  30.     z11 = err;
  31.  
  32.     err = si + 1.935715*z12 - .9417004*z22;
  33.     si = err - 2.00*z12 + z22;
  34.     z22 = z12;
  35.     z12 = err;
  36.  
  37.     speech[i] = .902428*si;
  38. }
  39.  
  40. }
  41.